const fs = require('fs');
const zlib = require('zlib');

// 读取原始 JSON 文件
const inputFilePath = 'data.json';
const outputFilePath = 'data.json.gz';

// 创建读取流
const inputFileStream = fs.createReadStream(inputFilePath);

// 创建写入流
const outputFileStream = fs.createWriteStream(outputFilePath);

// 创建 gzip 压缩流
const gzip = zlib.createGzip();

// 将读取流通过 gzip 压缩流后写入到写入流
inputFileStream.pipe(gzip).pipe(outputFileStream);

// 监听完成事件
outputFileStream.on('finish', () => {
    console.log(`文件已成功压缩为 ${outputFilePath}`);
});

// 监听错误事件
outputFileStream.on('error', (err) => {
    console.error('压缩过程中发生错误:', err);
});